package src.io;

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;

public class CopyDemo2 {
        public static void main(String[] args) throws IOException {
                FileInputStream fis=new FileInputStream("zsw.jpg");
                FileOutputStream fos=new FileOutputStream("zsw_cp2.jpg");
                /*
                InputStream超类中定义了块读取数据的方法
                int read(byte[] data)
                一次性读取给定的字节数组data总长度的字节量，并存入到字节数组中，
                返回值白水泥hi实际读取到了多少个字节，若返回-1表示读到了末尾

                OutputStream超类上也定义了块写字节的方法
                void write(byte[] data)
                一次性将给定的字节数组data中 的所有字节写出
                void write(byte[] data)
                 */
                long start=System.currentTimeMillis();
                byte[] data=new byte[1024*2];//10kb
                int len;//记录每次读取的实际的字节数
                while ((len=fis.read(data))!=-1){
                        fos.write(data,0,len);
                }
                long end=System.currentTimeMillis();
                System.out.println("复制完毕！耗时："+(end-start)+"ms");
                fis.close();
                fos.close();
        }
}
